// 业务类型以及对应的交易方向
// 在utils/dictionaryConfig.js中还定义了持仓类型
/*
   怎么区分应该用业务类型还是用持仓类型?
   业务类型用于下达指令，需要区分交易方向；
   持仓类型用于查询标的，无交易方向的概念，比如在证券代码中，后台返会的类型为持仓类型
*/
// 交易方向：appType  0-仅指令  1-仅簿记 2-仅转仓 3-仅行为交收  4-组合试算  5-仅翻译
// 业务类型：appType  0-仅指令  1-仅簿记管理  2-仅簿记交易交收  3-仅簿记行为交收
// 没有设置appType的，是所有场景下都展示，设置了appType的，是仅在指定的场景下展示
export default [
  {
    value: '0',
    title: '交易所现券',
    appType: ['0', '1', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '4', title: '债回售', appType: ['0', '1', '2'] },
      { value: '5', title: '提前还本', appType: ['3'] },
      { value: '6', title: '付息', appType: ['3'] },
      { value: '7', title: '到期', appType: ['3'] },
    ],
  },
  {
    value: '1',
    title: '银行间现券',
    appType: ['1', '2', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '4', title: '债回售', appType: ['0', '1', '2'] },
      { value: '5', title: '提前还本', appType: ['3'] },
      { value: '6', title: '付息', appType: ['3'] },
      { value: '7', title: '到期', appType: ['3'] },
    ],
  },
  {
    value: '2',
    title: '上交所固收',
    appType: ['0', '1', '2'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
      { value: '4', title: '债回售' },
    ],
  },
  {
    // 协议交易或大宗现券，本迭代扩展了协议，在对应不簿记和指令中，后来来不及处理新的业务类型，先把协议和大宗放一起
    // 后续，需要将协议和大宗拆分开，3-协议交易 25-大宗交易
    // 协议交易中没有债回售，大宗中包含，但目前生产没有债回收的数据，所以先隐藏，后面再大宗中将债回售放开
    value: '3',
    title: '协商成交',
    appType: ['0', '1', '2'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
    ],
  },
  {
    value: '25',
    title: '大宗现券',
    appType: ['0', '1', '2'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
      { value: '4', title: '债回售' },
    ],
  },
  {
    value: '4',
    title: '银行间质押式',
    appType: ['1', '2'],
    tradingDirect: [
      { value: '1', title: '融券回购' },
      { value: '2', title: '融资回购' },
    ],
  },
  {
    value: '5',
    title: '场外基金',
    appType: ['1', '2'],
    tradingDirect: [
      // 原名叫“基金交易”

      { value: '1', title: '申购' },
      { value: '2', title: '赎回' },

      { value: '3', title: '买入', appType: ['2'] }, // 仅在转仓查看场外基金簿记详情时支持
      { value: '4', title: '卖出', appType: ['2'] },
      // { value: '5', title: '转换' },
      { value: '6', title: '分红' },
      { value: '0', title: '认购' }, //后端已有认购为0的设计，这里延用
    ],
  },
  {
    value: '6',
    title: '非标（理财直融）',
    appType: ['1', '2', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '6', title: '付息', appType: ['3'] },
      { value: '7', title: '到期', appType: ['3'] },
    ],
  },
  {
    value: '7',
    title: '交易所质押式',
    appType: ['0', '1'],
    tradingDirect: [
      { value: '1', title: '融券回购' },
      { value: '2', title: '融资回购', appType: ['1', '2', '4'] }, // 在指令中不支持融资回购，簿记中支持(生产上的指令不支持，不合规，在测试环境中支持，测试需要测试下融资回购的业务)
      { value: '3', title: '提交质押', appType: ['0', '1', '2', '3'] },
      { value: '4', title: '转回质押', appType: ['0', '1', '2', '3'] },
    ],
  },
  {
    value: '8',
    title: '存款',
    appType: ['1', '2'],
    tradingDirect: [
      { value: 'F', title: '存入' },
      { value: 'i', title: '提取' },
      { value: 'calc', title: '结息' },
    ],
  },
  {
    value: '9',
    title: '场内（ETF）基金',
    appType: ['0', '1'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
    ],
  },
  {
    value: '12',
    title: '非标（非理财直融）',
    appType: ['1', '2', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '6', title: '付息', appType: ['3'] },
      { value: '7', title: '到期', appType: ['3'] },
      { value: '8', title: '提前还本', appType: ['3'] },
      { value: '9', title: '延迟付息', appType: ['3'] },
    ],
  },
  {
    value: '13',
    title: '交易所协议式',
    appType: ['1', '2'],
    tradingDirect: [
      { value: '1', title: '融券回购' },
      { value: '2', title: '融资回购' },
    ],
  },
  {
    value: '15',
    title: 'A股',
    appType: ['0', '1'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
    ],
  },
  {
    value: '16',
    title: '债券借贷',
    appType: ['1', '2'],
    tradingDirect: [
      { value: '1', title: '融入' },
      { value: '2', title: '融出' },
    ],
  },
  {
    value: '17',
    title: '网下申购',
    appType: ['1', '2'],
    tradingDirect: [{ value: '1', title: '申购' }],
  },
  {
    value: '19',
    title: '港股通',
    appType: ['1'],
    tradingDirect: [
      { value: '1', title: '买入' },
      { value: '2', title: '卖出' },
    ],
  },
  {
    value: '20',
    title: '资产管理计划',
    appType: ['1', '2', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '3', title: '展期', appType: ['2'] },
      { value: '6', title: '付息', appType: ['3'] },
      { value: '7', title: '到期', appType: ['3'] },
    ],
  },
  {
    value: '21',
    title: '委外投资',
    appType: ['1', '2', '3'],
    tradingDirect: [
      { value: '1', title: '买入', appType: ['0', '1', '2'] },
      { value: '2', title: '卖出', appType: ['0', '1', '2'] },
      { value: '3', title: '展期', appType: ['2'] },
      { value: '7', title: '到期', appType: ['3'] },
      { value: 'hdtj', title: '核对调减', appType: ['5'] },
      { value: 'hdtz', title: '核对调增', appType: ['5'] },
    ],
  },
  {
    value: '23',
    title: '股指期货',
    appType: ['1'],
    tradingDirect: [
      { value: 'V', title: '买入开仓' },
      { value: 'W', title: '卖出平仓' },
      { value: 'X', title: '卖出开仓' },
      { value: 'Y', title: '买入平仓' },
      { value: 'hdtj', title: '核对调减', appType: ['5'] },
      { value: 'hdtz', title: '核对调增', appType: ['5'] },
    ],
  }, // 股指期货 占用了 两个value值  23、24；下次新增类型从25开始

  //  对于OR开头的回购，【资产类型】为“银行间买断式”
  {
    // 薄记查询展示这是列表的匹配
    value: '32',
    title: '银行间买断式',
    appType: ['1', '2'],
    tradingDirect: [
      { value: '1', title: '融券回购' },
      { value: '2', title: '融资回购' },
    ],
  },
];
